home *** CD-ROM | disk | FTP | other *** search
/ Mac-Source 1994 July / Mac-Source_July_1994.iso / C and C++ / Entertainment / MacMud / Unix / sys⁄stat.h < prev    next >
Encoding:
Text File  |  1989-11-06  |  1.7 KB  |  54 lines  |  [TEXT/MPS ]

  1. /*    @(#)stat.h 2.8 88/02/08 SMI; from UCB 4.7 83/05/21    */
  2.  
  3. #ifndef __STAT_HEADER__
  4. #define __STAT_HEADER__
  5.  
  6. struct    stat
  7. {
  8.     dev_t    st_dev;
  9.     ino_t    st_ino;
  10.     unsigned short st_mode;
  11.     short    st_nlink;
  12.     short    st_uid;
  13.     short    st_gid;
  14.     dev_t    st_rdev;
  15.     off_t    st_size;
  16.     time_t    st_atime;
  17.     int    st_spare1;
  18.     time_t    st_mtime;
  19.     int    st_spare2;
  20.     time_t    st_ctime;
  21.     int    st_spare3;
  22.     long    st_blksize;
  23.     long    st_blocks;
  24.     long    st_spare4[2];
  25. };
  26.  
  27. #define    S_IFMT    0170000        /* type of file */
  28. #define        S_IFDIR    0040000    /* directory */
  29. #define        S_IFCHR    0020000    /* character special */
  30. #define        S_IFBLK    0060000    /* block special */
  31. #define        S_IFREG    0100000    /* regular */
  32. #define        S_IFLNK    0120000    /* symbolic link */
  33. #define        S_IFSOCK 0140000/* socket */
  34. #define        S_IFIFO    0010000    /* fifo */
  35. #define    S_ISUID    0004000        /* set user id on execution */
  36. #define    S_ISGID    0002000        /* set group id on execution */
  37. #define    S_ISVTX    0001000        /* save swapped text even after use */
  38. #define    S_IREAD    0000400        /* read permission, owner */
  39. #define    S_IWRITE 0000200    /* write permission, owner */
  40. #define    S_IEXEC    0000100        /* execute/search permission, owner */
  41.  
  42. #define    S_IRUSR 0000400        /* read permission, owner */
  43. #define    S_IWUSR 0000200        /* write permission, owner */
  44. #define    S_IXUSR 0000100        /* execute/search permission, owner */
  45. #define    S_IRGRP 0000040        /* read permission, group */
  46. #define    S_IWGRP 0000020        /* write permission, grougroup */
  47. #define    S_IXGRP 0000010        /* execute/search permission, group */
  48. #define    S_IROTH 0000004        /* read permission, other */
  49. #define    S_IWOTH 0000002        /* write permission, other */
  50. #define    S_IXOTH 0000001        /* execute/search permission, other */
  51. #define    S_ENFMT 0000000        /* enforcement-mode locking not implemented */
  52.  
  53. #endif !__STAT_HEADER__
  54.